package com.itheima.sc.api.ums;

import com.itheima.sc.pojo.ums.UmsRole;
import com.itheima.sc.pojo.ums.UmsRoleMenuRelation;
import com.itheima.sc.vo.PageResult;

import java.util.List;

public interface UmsRoleApi {
    /**
     * 添加角色
     */
    void createRole(UmsRole umsRole);

    /**
     * 删除角色
     */
    void deleteByIds(Integer[] ids);

    /**
     * 获取所有角色
     */
    List<UmsRole> listAll();



    /**
     * 给角色分配资源
     */
    void allocResource(Integer resourceId, Integer roleId);

    /**
     * 根据角色名称分页获取角色列表
     */
    PageResult list(Integer pageNum, Integer pageSize, String keyword);




    //通过角色用户的关系表查询
    List<UmsRole> selectByAdminId(Long adminId);

    /**
     * 调用API修改数据
     */
    void updateStatus(Integer id, Integer status);

    /**
     * 通过roleId获取UmsRole对象
     */
    UmsRole getUmsRole(Long roleId);

    /**
     * 修改角色
     */
    void update(UmsRole umsRole);

    /**
     *根据roleIds查询角色
     */
    List<UmsRole> getByIds(List<Long> roleIds);
}
